package com.peak.spring.boot.core.exception;

import com.peak.spring.boot.api.constant.ErrorMessage;

public class ProjectException extends RuntimeException {

	private static final long serialVersionUID = 1941251312714193339L;

	private ErrorMessage errorMessage;

	public ProjectException() {
		super();
	}

	public ProjectException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
		super(message, cause, enableSuppression, writableStackTrace);
	}

	public ProjectException(String message, Throwable cause) {
		super(message, cause);
	}

	public ProjectException(String message) {
		super(message);
	}

	public ProjectException(Throwable cause) {
		super(cause);
	}

	public ProjectException(ErrorMessage message, Throwable cause) {
		super(message.getMessage(), cause);
		this.errorMessage = message;
	}

	public ProjectException(ErrorMessage message) {
		super(message.getMessage());
		this.errorMessage = message;
	}

	public ErrorMessage getErrorMessage() {
		return this.errorMessage;
	}

}
